
Nombre:
WinXFiles
Versión:
4.3
Editor:
PepSoft
Víctima:
WINXFILES.EXE
Guardado: HKEY_CURRENT_USER\Software\Pepsoft\WXF32\Reg
Herramientas:
SoftICE
Cerebro
Cracker:
LW2000
Tutorial:
número 24
Renuncia: Este tutorial tiene una finalidad únicamente
educativa. No asumo ninguna responsabilidad por el mal uso de éste material.
1.
Vamos a la pantalla de registro e introducimos
‘LW2000’ como Name y ‘1230099’ como Key.
2.
¡Boooom! “Sorry … Invalid Registration
Password.” ¿Qué demonios es esto? Parece que hemos encontrado un ‘bug’ … ¡Vamos
a corregirlo!
3.
Pulsamos Ctrl-D y ponemos un breakpoint
en ‘hMemCpy’ (“BPX HMEMCPY”). Pulsmos F5 para regresar a la aplicación. Ahora
intentamos registrarnos de nuevo. ¡Booom! SoftICE aparece. Pulsamos F11 para
ir a la instrucción que realizó la llamada y F12 unas seis veces; con lo cual
ya deberíamos estar dentro de código de WinXFile.
4.
Ahora pulsamos F10 para ejecutar todas
las instrucciones ‘RET’ y deberíamos ver esto:
:00480DB1 8B85D4FBFFFF mov eax, dword ptr [ebp+FFFFFBD4]
:00480DB7 8D95D8FBFFFF lea edx, dword ptr [ebp+FFFFFBD8]
:00480DBD E8E255F8FF call 004063A4
:00480DC2 8B95D8FBFFFF mov edx, dword ptr [ebp+FFFFFBD8]
:00480DC8 8BC3
mov eax, ebx
:00480DCA E85943F9FF call 00415128
:00480DCF 8D95D4FBFFFF lea edx, dword ptr [ebp+FFFFFBD4]
:00480DD5 8B45FC
mov eax, dword ptr [ebp-04]
:00480DD8 8B80B8010000 mov eax, dword ptr [eax+000001B8]
:00480DDE E81543F9FF call 004150F8
5.
Vamos traceando con F10 y vamos echando
un vistazo a los registros:
:00481071 0FB63B
movzx edi, byte ptr [ebx]
:00481074 0FBFC7
movsx eax, di
:00481077 B917000000 mov ecx, 00000017
:0048107C 99
cdq
:0048107D F7F9
idiv ecx
:0048107F 8A9415F9FCFFFF mov dl, byte ptr [ebp+edx-00000307]
:00481086 8D85D0FBFFFF lea eax, dword ptr [ebp+FFFFFBD0]
:0048108C 885001
mov byte ptr [eax+01], dl
:0048108F C60001
mov byte ptr [eax], 01
:00481092 8D95D0FBFFFF lea edx, dword ptr [ebp+FFFFFBD0]
:00481098 8D85F8FDFFFF lea eax, dword ptr [ebp+FFFFFDF8]
:0048109E E8191AF8FF call 00402ABC
:004810A3 43
inc ebx
:004810A4 4E
dec esi
:004810A5 75CA
jne 00481071
6.
Bien, su hemos traceado éste trozo de
código habremos visto que el registro DL va llenándose de letras. Sigamos
traceando un poco más:
:004810A7 8D95D4FBFFFF lea edx, dword ptr [ebp+FFFFFBD4]
:004810AD 8B45FC
mov eax, dword ptr [ebp-04]
:004810B0 8B80BC010000 mov eax, dword ptr [eax+000001BC]
:004810B6 E83D40F9FF call 004150F8
:004810BB 8B85D4FBFFFF mov eax, dword ptr [ebp+FFFFFBD4]
:004810C1 50
push eax
:004810C2 8D85D8FBFFFF lea eax, dword ptr [ebp+FFFFFBD8]
:004810C8 8D95F8FDFFFF lea edx, dword ptr [ebp+FFFFFDF8]
>’D EDX’,
>nuestro
>Serial
:004810CE E80127F8FF call 004037D4
:004810D3 8B95D8FBFFFF mov edx, dword ptr [ebp+FFFFFBD8]
:004810D9 58
pop eax
7.
Bien, anotamos nuestro Serial y probamos.
¡Enhorabuena! ¡Ya es un usuario registrado!
¡Se acabó! Fácil, ¿no? ¿Algún comentario? Envíeme
un email a LW2000@gmx.net.
o vaya a http://www.LW2000.cjb.net
Gracias a tKC por sus tutoriales. Empecé leyendo su
primer tutorial y todavía sigo leyéndolos.
Traducción de: MeGaBiTe